package com.jiazixuan.stock.config;

import com.jiazixuan.stock.pojo.vo.StockInfoConfig;
import com.jiazixuan.stock.utils.IdWorker;
import com.jiazixuan.stock.utils.ParserStockInfoUtil;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;



@Configuration
@EnableConfigurationProperties({StockInfoConfig.class})
public class CommonConfig {
    /*
    * 基于雪花算法保证生成的id唯一
    * */
    @Bean
    public IdWorker idWorker(){
        /**
         * 参数1：机器ID
         * 参数2：机房ID
         * 机房和机器编号一般是运维人员进行唯一性规划
         */
        return new IdWorker(1l,2l);
    }

    /**
     * 定义解析股票 大盘 外盘 个股 板块相关信息的工具类Bean
     * @return
     */
    @Bean
    public ParserStockInfoUtil parserStockInfoUtil(){
        return new ParserStockInfoUtil(idWorker());
    }
}
